/*--------------------------------*- C++ -*----------------------------------*\
  =========                 |
  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
   \\    /   O peration     | Website:  https://openfoam.org
    \\  /    A nd           | Version:  7
     \\/     M anipulation  |
\*---------------------------------------------------------------------------*/
FoamFile
{
    version     2.0;
    format      ascii;
    class       dictionary;
    object      blockMeshDict;
}

// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

convertToMeters 0.1;

vertices
(
      (       0.500        0.000        0.000)
      (       0.369        0.338        0.000)
      (       0.338        0.369        0.000)
      (       0.000        0.500        0.000)
      (       0.737        0.676        0.000)
      (       0.074        0.068        0.000)
      (       0.676        0.737        0.000)
      (       0.068        0.074        0.000)
      (       0.000        1.000        0.000)
      (       1.000        0.000        0.000)
      (       0.100        0.000        0.000)
      (       0.000        0.100        0.000)
      (       0.500        0.000        2.000)
      (       0.369        0.338        2.000)
      (       0.338        0.369        2.000)
      (       0.000        0.500        2.000)
      (       0.737        0.676        2.000)
      (       0.074        0.068        2.000)
      (       0.676        0.737        2.000)
      (       0.068        0.074        2.000)
      (       0.000        1.000        2.000)
      (       1.000        0.000        2.000)
      (       0.100        0.000        2.000)
      (       0.000        0.100        2.000)
);

blocks
(
      hex (1 0 9 4 13 12 21 16) (10 20 40) simpleGrading (1 1 1)
      hex (2 1 4 6 14 13 16 18) (2 20 40) simpleGrading (1 1 1)
      hex (3 2 6 8 15 14 18 20) (10 20 40) simpleGrading (1 1 1)
      hex (5 10 0 1 17 22 12 13) (10 20 40) simpleGrading (1 1 1)
      hex (11 7 2 3 23 19 14 15) (10 20 40) simpleGrading (1 1 1)
);

edges
(
      arc  0 1 (       0.470        0.171        0.000 )
      arc  12 13 (       0.470        0.171        2.000 )
      arc  2 3 (       0.171        0.470        0.000 )
      arc  14 15 (       0.171        0.470        2.000 )
      arc  9 4 (       0.940        0.342        0.000 )
      arc  21 16 (       0.940        0.342        2.000 )
      arc  5 10 (       0.094        0.034        0.000 )
      arc  17 22 (       0.094        0.034        2.000 )
      arc  6 8 (       0.342        0.940        0.000 )
      arc  18 20 (       0.342        0.940        2.000 )
      arc  11 7 (       0.034        0.094        0.000 )
      arc  23 19 (       0.034        0.094        2.000 )
);

boundary
(
    inlet
    {
        type patch;
        faces
        (
            (13 12 21 16)
            (14 13 16 18)
            (15 14 18 20)
            (17 22 12 13)
            (23 19 14 15)
        );
    }
    outlet
    {
        type patch;
        faces
        (
            (1 4 9 0)
            (2 6 4 1)
            (3 8 6 2)
            (5 1 0 10)
            (11 3 2 7)
        );
    }
    innerWall
    {
        type wall;
        faces
        (
            (2 1 13 14)
            (5 10 22 17)
            (5 17 13 1)
            (11 7 19 23)
            (7 2 14 19)
        );
    }
    outerWall
    {
        type wall;
        faces
        (
            (4 16 21 9)
            (6 18 16 4)
            (8 20 18 6)
        );
    }
    cyclic_half0
    {
        type cyclic;
        neighbourPatch cyclic_half1;
        transform rotational;
        rotationAxis (0 0 1);
        rotationCentre (0 0 0);
        faces
        (
            (0 9 21 12)
            (10 0 12 22)
        );
    }
    cyclic_half1
    {
        type cyclic;
        neighbourPatch cyclic_half0;
        transform rotational;
        rotationAxis (0 0 1);
        rotationCentre (0 0 0);
        faces
        (
            (3 15 20 8)
            (11 23 15 3)
        );
    }
);

mergeMatchPairs
(
);

// ************************************************************************* //
